<?php
class AdquirenteBSN extends GenericBSN {

	function __construct() {
		$this->dao = new AdquirenteDAO();		
	}

	public function consultar($vars) {
		$this->preencher($vars);
		$this->Records = $this->dao->consultar($this->where, $this->params, $this->order . $this->limit);
		$this->Result  = "OK";
	}
	
	public function consultarPK($vars) {
		$this->Records = $this->dao->consultarPK($vars['id']);
		$this->Result = "OK";
	}
	
	public function consultarCPF($vars) {
		$this->Records = $this->dao->consultarCPF($vars['cpf'] . "%");
		$this->Result = "OK";
	}
	
	public function consultarNome($vars) {
		$this->Records = $this->dao->consultarNome($vars['nome'] . "%");
		$this->Result = "OK";
	}
	
	public function inserir($vars) {
		$registro['cpf'] 			= $vars['cpf'];
		$registro['nome'] 			= $vars['nome'];
		$registro['sexo'] 			= $vars['sexo'];
		$registro['endereco'] 		= $vars['endereco'];
		$registro['bairro'] 		= $vars['bairro'];
		$registro['cidade'] 		= $vars['cidade'];
		$registro['uf'] 			= $vars['uf'];
		$registro['cep'] 			= $vars['cep'];
		$registro['telefone'] 		= $vars['telefone'];
		$registro['rg'] 			= $vars['rg'];
		$registro['dt_nasc'] 		= $vars['dt_nasc'];
		$registro['cid_nat'] 		= $vars['cid_nat'];
		$registro['est_civil'] 		= $vars['est_civil'];
		$registro['nome_pai'] 		= $vars['nome_pai'];
		$registro['nome_mae'] 	 	= $vars['nome_mae'];
		$registro['nome_conjuge'] 	= $vars['nome_conjuge'];
		$registro['sucessor']  		= $vars['sucessor'];
		$registro['cpf_prop_ant'] 	= $vars['cpf_prop_ant'];
		
		$this->Record = $this->dao->inserir($registro);
		if (is_null($this->Record)) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar inserir";
		} else {
			$this->Result  = "OK";
		}
	}
	
	public function alterar($vars) {
		$registro['id'] 	 	 	= $vars['id'];
		$registro['cpf'] 			= $vars['cpf'];
		$registro['nome'] 			= $vars['nome'];
		$registro['sexo'] 			= $vars['sexo'];
		$registro['endereco'] 		= $vars['endereco'];
		$registro['bairro'] 		= $vars['bairro'];
		$registro['cidade'] 		= $vars['cidade'];
		$registro['uf'] 			= $vars['uf'];
		$registro['cep'] 			= $vars['cep'];
		$registro['telefone'] 		= $vars['telefone'];
		$registro['rg'] 			= $vars['rg'];
		$registro['dt_nasc'] 		= $vars['dt_nasc'];
		$registro['cid_nat'] 		= $vars['cid_nat'];
		$registro['est_civil'] 		= $vars['est_civil'];
		$registro['nome_pai'] 		= $vars['nome_pai'];
		$registro['nome_mae'] 	 	= $vars['nome_mae'];
		$registro['nome_conjuge'] 	= $vars['nome_conjuge'];
		$registro['sucessor']  		= $vars['sucessor'];
		$registro['cpf_prop_ant'] 	= $vars['cpf_prop_ant'];
		
		if (is_null($this->dao->alterar($registro))) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar alterar";
		} else {
			$this->Result  = "OK";
		}
	}
	
	public function excluir($registro) {
		try {
			$res = $this->dao->excluir($registro['id']);
			$this->Result  = "OK";
		} catch (Exception $e) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar excluir: " . $e->getMessage();
		}
	}
	
	public function relatorio($vars) {
		try {
			$this->Records = $this->dao->consultarRelatorio(
					$vars['tipo'], 
					$vars['filtro'],
					$vars['dt_ini'],
					$vars['dt_fim'],
					$vars['ordem']);
			$this->Result  = "OK";
		} catch (Exception $e) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar gerar relatório: " . $e->getMessage();
		}
	}
	
	public function cartasCobranca($vars) {
		try {
			$this->Records = $this->dao->cartasCobranca($vars['tipo'], $vars['filtro']);
			$this->Result  = "OK";
		} catch (Exception $e) {
			$this->Result  = "ERROR";
			$this->Message = "Erro ao tentar gerar etiquetas para cartas de cobrança: " . $e->getMessage();
		}
	}
}
?>